package com.ruoyi.zxjd.conference.mapper;

import java.util.List;
import com.ruoyi.zxjd.conference.domain.ConferenceArrange;
import com.ruoyi.zxjd.conference.domain.ConferenceParticipant;
import com.ruoyi.zxjd.conference.domain.ConferenceProgress;
import org.apache.ibatis.annotations.Param;

/**
 * 会议安排Mapper接口
 * 
 * @author lcc
 * @date 2021-02-07
 */
public interface ConferenceArrangeMapper 
{
    /**
     * 查询会议安排
     * 
     * @param arrangeId 会议安排ID
     * @return 会议安排
     */
    public ConferenceArrange selectConferenceArrangeById(Long arrangeId);

    /**
     * 查询会议安排列表
     * 
     * @param conferenceArrange 会议安排
     * @return 会议安排集合
     */
    public List<ConferenceArrange> selectConferenceArrangeList(ConferenceArrange conferenceArrange);

    /**
     * 新增会议安排
     * 
     * @param conferenceArrange 会议安排
     * @return 结果
     */
    public int insertConferenceArrange(ConferenceArrange conferenceArrange);

    /**
     * 修改会议安排
     * 
     * @param conferenceArrange 会议安排
     * @return 结果
     */
    public int updateConferenceArrange(ConferenceArrange conferenceArrange);

    /**
     * 删除会议安排
     * 
     * @param arrangeId 会议安排ID
     * @return 结果
     */
    public int deleteConferenceArrangeById(Long arrangeId);

    /**
     * 批量删除会议安排
     * 
     * @param arrangeIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteConferenceArrangeByIds(String[] arrangeIds);

    /**
     * 批量删除填报进度
     * 
     * @param customerIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteConferenceProgressByArrangeIds(String[] arrangeIds);
    
    /**
     * 批量新增填报进度
     * 
     * @param conferenceProgressList 填报进度列表
     * @return 结果
     */
    public int batchConferenceProgress(List<ConferenceProgress> conferenceProgressList);
    

    /**
     * 通过会议安排ID删除填报进度信息
     * 
     * @param arrangeId
     * @return 结果
     */
    public int deleteConferenceProgressByArrangeId(Long arrangeId);

    /**
     * 发布会议安排
     * @param arrangeId
     * @param draft
     * @return
     */
    int updateStatusByArrangeId(@Param("arrangeId") Long arrangeId,@Param("draft") String draft);

    /**
     * 批量删除填报人员
     *
     * @param customerIds 需要删除的数据ID
     * @return 结果
     */
    int deleteConferenceParticipantByArrangeIds(String[] arrangeIds);
}
